package com.xhwy.service;

import com.xhwy.entity.OrderDetail;
import com.xhwy.param.OrderDetailIdParam;
import com.xhwy.param.OrderParam;
import com.xhwy.param.UserIdParam;
import com.xhwy.util.PageUtil;
import com.xhwy.util.R;
import com.xhwy.vo.admin.OrderVo;

public interface OrderService {

    /**
     * 生成订单
     * @param orderParam
     * @return
     */
    R save(OrderParam orderParam);

    /**
     * 查询我的订单数据
     * @param userIdParam 已经校验过的用户id
     * @return
     */
    R myOrder(UserIdParam userIdParam);

    /**
     * 查询全部订单信息
     * @return
     */
    PageUtil<OrderVo> list(PageUtil<OrderVo> pageUtil);

    /**
     * 根据订单详情id获取订单详情信息
     * @param orderDetailIdParam 已经校验完成的订单详情id
     * @return
     */
    R orderDetail(OrderDetailIdParam orderDetailIdParam);
}
